Skip to content

feat(web): give LastCode sidebar its own opt-in setting - #373

Open
lastobelus wants to merge 72 commits into
lastcode/mainfrom
lastcode/sidebar-ownership-gen7
Open

lastobelus wants to merge 72 commits into
lastcode/mainfrom
lastcode/sidebar-ownership-gen7

Conversation

@lastobelus

@lastobelus lastobelus commented Oct 10, 2026 •

Copy link
Copy Markdown
Owner

The customized project tree was selected through the upstream legacy preference. Give it the LastCodeSidebar name and its own default-off LastCode setting: LastCode on selects our tree; LastCode off selects genuine upstream legacy or inbox/v2 through the independent upstream flag. Existing legacy users can opt in at Settings → LastCode → Appearance → LastCode sidebar.

Separate the owned implementation into project/collection composition, family graph and aggregation, row controls, navigation and operations. Keep the lazy loading boundary, destination permission checks, persistence/removal explanations, scale and family-collapse storage, editor/dialog lifetimes and nested keyboard activation. Deep rows wrap metadata at the supported minimum width; the corrective candidate also wraps leading controls while retaining real status colors, waiting Action indications, protection and family details, with a reserved readable name. Shared shortcut and creator guards use simpler decisions without changing preference ownership.

Validation: the corrected production candidate passed 1,072 focused tests under the root configuration and web typecheck; its final editor change passed 51 affected tests. GitHub subsequently exposed three compiler-enabled test-mock failures. All three reproduced under the web configuration and were corrected with real setting/grant subscription notifications, preserving their assertions; all 35 affected web tests pass. The final test-only candidate has identical production/build inputs and a passing exact-head/base Quick CI receipt. Enabled publication hooks remain active. Fresh whole-file analysis scores the actual LastCodeSidebar entry and menu builders 10, and every owned refactor module above 8. The historical starting entry score was 2.49. Shared pre-existing sentinel modules remain outside that owned-module claim. The full-PR strict analysis still exits with warnings, with all 138 eligible files checked: 31 finding details across 11 files, including the three details in the two previously accepted family exception groups. Creator complexity improved to 9 but remains a warning; retained legacy, copied picker/draft and shared settings/layout findings are not waived. Prior failed checks and the original three measured trials remain historical; this architecture work is separate.

Retained finite automated evidence covers 72 deep/narrow/scale layouts, rename lifetimes, annotation save/restore/resolve and message-anchor reopening, archive confirmation and Settings restore, lazy loading and unsent drafts. Five paired warm React Profiler samples improved median rename render time from 85.1 to 8.3ms and family render time from 71.8 to 32.1ms before the final guard/base refresh; these are finite development samples, not cold-cache or query-count proof. Final affected browser checks, actual read-only/multiple-environment targeting, native PR/handoffs, applicable Electron checks, public-safe visual evidence and manual acceptance remain pending. Initial Astra High and Opus 5.5 High findings on ordinary-width status presentation and source registry coverage are addressed. Astra corrective review confirmed the initial fixes and found a narrow rename-input issue; its minimum-width fix is complete with 51 affected tests, scoped lint, fresh editor score10 and final exact-head Quick CI. The last small fixes have no additional local review because the bounded budget is consumed. Hosted review also identified a legacy macOS Control-click navigation/selection defect; the existing context-menu guard now protects that gesture, with 163 platform tests passing. Current-head hosted review/CI remain required; Opus corrective review was declined by the cached quota gate. No merge before manual acceptance.

Model: GPT-6.1 Sol; harness: Codex.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 10, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-12T05:35:15.420681Z ab51088 Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@lastobelus

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: a9d15de893

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread apps/web/src/components/LegacySidebar.tsx Outdated
Comment thread apps/web/src/components/LegacySidebar.tsx
Comment thread apps/web/src/components/settings/LastCodeSettings.tsx
@lastobelus
lastobelus force-pushed the lastcode/sidebar-ownership-gen7 branch from a9d15de to 6f6d7f1 Compare October 10, 2026 05:12
@lastobelus

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 6f6d7f1085

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread apps/web/src/index.css
@lastobelus

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 90ba68b4f7

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread apps/web/src/lastcodeSidebarScale.ts
@lastobelus
lastobelus force-pushed the lastcode/sidebar-ownership-gen7 branch from 90ba68b to 812b328 Compare October 10, 2026 05:24
@lastobelus

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 812b328d6c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread apps/web/src/components/LegacySidebar.tsx Outdated
Comment thread apps/web/src/sidebarMode.ts
@lastobelus

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 18bb8c2f0b

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread apps/web/src/components/LegacySidebar.tsx Outdated
Comment thread apps/web/src/components/LegacySidebar.tsx Outdated
@lastobelus
lastobelus force-pushed the lastcode/sidebar-ownership-gen7 branch from 18bb8c2 to 462e67a Compare October 10, 2026 05:52
@lastobelus

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 462e67adce

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread apps/web/src/components/LegacySidebar.tsx Outdated
Comment thread apps/web/src/components/LegacySidebar.tsx Outdated
@lastobelus

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Hooray!

Reviewed commit: e15ffcd31e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@lastobelus
lastobelus force-pushed the lastcode/main branch 3 times, most recently from 8fa182b to b1ad7e4 Compare October 10, 2026 12:51
@lastobelus
lastobelus force-pushed the lastcode/sidebar-ownership-gen7 branch from e15ffcd to fd6189d Compare October 11, 2026 02:03
@lastobelus

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: fd6189ddc9

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread apps/web/src/components/AppSidebarLayout.tsx Outdated
@lastobelus

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Bravo.

Reviewed commit: f4b719e6dd

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@lastobelus
lastobelus force-pushed the lastcode/sidebar-ownership-gen7 branch from f4b719e to 4d4a248 Compare October 11, 2026 03:23
@lastobelus

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 4d4a2489dc

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread apps/web/src/components/settings/LastCodeSettings.tsx
@lastobelus

Copy link
Copy Markdown
Owner Author

@codex review

Pass the existing family projection into the list and keep typed headings with their family presentation. Mounted range selection follows refreshed order without replacing navigation or file-drop capabilities.

Carry-Group: legacy-sidebar

Implemented by GPT-6.1-Sol through the Codex harness.
Keep row subscriptions, lease and interaction lifetimes together while passing existing gesture and query snapshots directly to the focused controls. Preserve separate targeted rename and archive inputs so unrelated memoized rows remain stable.

Carry-Group: legacy-sidebar

Implemented by GPT-6.1-Sol through the Codex harness.
Render the existing family projection with eight domain inputs. Bind project-owned editor and navigation state to the same targeted memoized row props, keeping collection expansion and animation attachment unchanged.

Carry-Group: legacy-sidebar

Implemented by GPT-6.1-Sol through the Codex harness.
Keep project menu targets and dialogs independent, derive environment badges from shared presentation, and attach animation inside each thread list. Give project composition eight domain inputs while retaining collection-owned expansion and sort-mode remount behavior.

Carry-Group: legacy-sidebar

Implemented by GPT-6.1-Sol through the Codex harness.
Compose projects once while keeping drag sessions and list animation local. Preserve sort-mode editor remounts and collection expansion.

Carry-Group: legacy-sidebar

Implemented with GPT-6.1-Sol through the Codex harness.
Share a scoped project lookup across shell indexing, activity ordering and active-route selection. Keep project-local family projection and query ownership unchanged.

Carry-Group: legacy-sidebar

Implemented with GPT-6.1-Sol through the Codex harness.
Resolve traversal and jump commands to one scoped target. Share selection and mobile navigation with row actions, while keeping root and rendered family order in parity.

Carry-Group: legacy-sidebar

Implemented with GPT-6.1-Sol through the Codex harness.
Keep environment grouping and provider presentation in focused memoized responsibilities, preserving primary catalog fallback and scoped connection classifications.

Carry-Group: legacy-sidebar

Implemented by GPT-6.1-Sol through the Codex harness.
Keep chrome and lifecycle ownership in the lazy entry, collection and navigation in content, and search and project tools in focused leaves. Share the same expansion state between root keyboard order and rendered projects.

Carry-Group: legacy-sidebar

Implemented by GPT-6.1-Sol through the Codex harness.
Preserve every family and menu combination while separating Cartesian case construction from assertions and optional menu fixture assembly.

Carry-Group: legacy-sidebar

Implemented by GPT-6.1-Sol through the Codex harness.
Separate environment decoration from provider identity and preserve ordered rename guards for native row gestures.

Carry-Group: legacy-sidebar

Implemented with GPT-6.1-Sol in the Codex harness.
Preserve existing thread identity, native event order, permissions and independent interaction lifetimes.

Carry-Group: legacy-sidebar

Implemented with GPT-6.1-Sol in the Codex harness.
Preserve existing thread identity, native event order, permissions and independent interaction lifetimes.

Carry-Group: legacy-sidebar

Implemented with GPT-6.1-Sol in the Codex harness.
Preserve existing thread identity, native event order, permissions and independent interaction lifetimes.

Carry-Group: legacy-sidebar

Implemented with GPT-6.1-Sol in the Codex harness.
Preserve existing thread identity, native event order, permissions and independent interaction lifetimes.

Carry-Group: legacy-sidebar

Implemented with GPT-6.1-Sol in the Codex harness.
Carry-Group: legacy-sidebar
Carry-Fix: #373
Carry-Group: legacy-sidebar
Carry-Fix: #373
Carry-Group: legacy-sidebar
Carry-Fix: #373
Carry-Group: legacy-sidebar
Carry-Fix: #373
Keep sidebar modes explicit and reuse creator eligibility without changing independent preferences or nested keyboard behavior.

Carry-Group: legacy-sidebar

Carry-Fix: #373
Wrap row controls while reserving readable thread names. Keep status colors, action waiting indicators and family/protection details visible; track the extracted sidebar implementation in the feature registry.

Carry-Group: legacy-sidebar

Carry-Fix: #373
Allow restored row controls to wrap above the editor instead of shrinking its text area; preserve the keyed session and existing submit/cancel lifetimes.

Carry-Group: legacy-sidebar

Carry-Fix: #373
The project row renderer is the public entry point; the memoized row is only used inside its module.

Carry-Group: legacy-sidebar

Carry-Fix: #373
Ignore context-menu gestures before modifier selection or thread navigation, using the existing platform-aware guard.

Carry-Group: legacy-sidebar

Carry-Fix: #373
Model setting and permission updates as external-store notifications so compiler-enabled tests observe the same mounted transitions as the real hooks. Preserve the editor, status, and permission assertions.

Carry-Group: legacy-sidebar

Carry-Fix: #373
Navigation autofocus respects an existing editable or popup focus owner, so opening a sidebar rename editor on an inactive row is not immediately cancelled by composer focus.

Carry-Group: legacy-sidebar

Carry-Fix: #373
Protect only the active sidebar input from navigation autofocus. Composer caret placement and dialog or search navigation retain their prior behavior.

Carry-Group: legacy-sidebar

Carry-Fix: #373
@lastobelus
lastobelus force-pushed the lastcode/sidebar-ownership-gen7 branch from a604656 to ab51088 Compare October 12, 2026 05:29
@lastobelus

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Nice work!

Reviewed commit: ab5108854f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant